<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>functionality test of window.performance.mark</title>
        <link rel="author" title="Intel" href="http://www.intel.com/" />
        <link rel="help" href="http://www.w3.org/TR/user-timing/#extensions-performance-interface"/>
        <script src="/resources/testharness.js"></script>
        <script src="/resources/testharnessreport.js"></script>
        <script src="/webperf/tests/resources/webperftestharness.js"></script>
        <script src="/webperf/tests/resources/webperftestharnessextension.js"></script>
        <script>
        setup({ explicit_done: true });

        function onload_test()
        {
            var context = new PerformanceContext(window.performance);
            var entrylist_checker = new performance_entrylist_checker("mark");
            var string_mark_names = mark_names.map(function (x) { return String(x)});

            test_equals(context.getEntriesByType("mark").length, 0, 'There should be ' + 0 + ' marks');
            mark_names.forEach(context.mark, context);
            var mark_entrylist = context.getEntriesByType("mark");

            entrylist_checker.entrylist_check(mark_entrylist, mark_names.length, string_mark_names);

            for (var i = 0; i < mark_entrylist.length; ++i)
            {
                var mark_entrylist_by_name = context.getEntriesByName(mark_entrylist[i].name, "mark");
                entrylist_checker.entrylist_check(mark_entrylist_by_name, 1, string_mark_names);
            }

            mark_names.forEach(context.mark, context);
            var mark_entrylist = context.getEntriesByType("mark");
            entrylist_checker.entrylist_check(mark_entrylist, mark_names.length * 2, string_mark_names);

            for (var i = 0; i < mark_entrylist.length; ++i)
            {
                var mark_entrylist_by_name = context.getEntriesByName(mark_entrylist[i].name, "mark");
                entrylist_checker.entrylist_check(mark_entrylist_by_name, 2, string_mark_names);
            }

            done();
        }
        </script>
    </head>
    <body onload=onload_test()>
        <h1>Description</h1>
        <p>This test validates functionality of the interface window.performance.mark.</p>
        <div id="log"></div>
    </body>
</html>
